/*
 *接口编写处...
*如果接口需要做Action的权限验证，请在Action上使用属性
*如: [ApiActionPermission("base_product",Enums.ActionPermissionOptions.Search)]
 */
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Http;
using VOL.Entity.DomainModels;
using MES.BasicData.IServices;
using MES.BasicData.Services;
using VOL.Core.DBManager;

namespace MES.BasicData.Controllers
{
    public partial class base_productController
    {
        private readonly Ibase_productService _service;//访问业务代码
        private readonly IHttpContextAccessor _httpContextAccessor;

        [ActivatorUtilitiesConstructor]
        public base_productController(
            Ibase_productService service,
            IHttpContextAccessor httpContextAccessor
        )
        : base(service)
        {
            _service = service;
            _httpContextAccessor = httpContextAccessor;
        }

        //后台App_ProductController中添加代码，返回table数据
        [HttpPost, Route("getSelectorDemo")]
        public IActionResult GetSelectorDemo([FromBody] PageDataOptions options)
        {
            //1.可以直接调用框架的GetPageData查询
            PageGridData<base_product> data = base_productService.Instance.GetPageData(options);
            return JsonNormal(data);
        }

        [Route("getSelectorById"), HttpGet]
        public IActionResult GetSelectorById(int id)
        {
            string sql = $" select * from base_product WHERE Product_Id = {id};";
            base_product result = DBServerProvider.SqlDapper.QueryFirst<base_product>(sql, new { });
            return JsonNormal(result);
        }
    }
}
